package com.orientation.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.orientation.dto.BatchVo;
import com.orientation.entity.Reserve;
import com.orientation.vo.ReserveVo;
import com.orientation.vo.StudentProgressVo;

import java.util.List;

/**
 * <p>
 * 报到 服务类
 * </p>
 *
 * @author xuandian
 * @since 2022-3-9
 */
public interface ReserveService extends IService<Reserve> {

    /**
     * 统计报道情况
     *
     * @return
     */

    StudentProgressVo progress(String collegeId);

    /**
     * 批量审核
     *
     * @param batchVo
     */
    void auditBatch(BatchVo batchVo);

    /**
     * 审核界面列表
     *
     * @param pageNum
     * @param pageSize
     * @param studentName
     * @param majorId
     * @return
     */

    Page<ReserveVo> queryReserveVo(Integer pageNum, Integer pageSize, String studentName, String majorId, String status, String studentId, String classId,String startTime, String endTime, String adviserId);

    /**
     * h5 报道预约
     *
     * @param reserve
     * @return
     */

    void insertSave(Reserve reserve);

    /**
     *
     * @param id
     * @param status
     * @param studentId
     * @param realTime
     * @return
     */

    List<ReserveVo> getReserveVosAll(String id, String status, String studentId, String realTime);

    /**
     *
     * @param pageNum
     * @param pageSize
     * @param id
     * @param status
     * @param studentId
     * @param realTime
     * @return
     */
    IPage<ReserveVo> queryReserveVoAll(Integer pageNum, Integer pageSize, String id, String status, String studentId, String realTime);
}
